Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
É um sistema bem conhecido de 'estatísticas OTS'. Ele rastreia todas as tarefas do thread do despachante, chamadas de função Lua e consultas SQL.
Ele gera arquivos e dispatcher.log fica assim: lua.log - sql.log - data/logs/stats
O intervalo do relatório é configurável em config.lua.
Ele também relata chamadas de função lentas/muito lentas em arquivos dispatcher_slow.log
Ex: a inicialização do servidor leva mais de 50 ms, então é relatado como muito lento: lua_slow.log - sql_slow.log- dispatcher_very_slow.log
Lua startup.lua executa mais de 10 ms, é relatada como lenta:
SQL demorou mais de 10 ms, é relatado como lento:
O tempo lento/muito lento é configurável em config.lua
Existem também special.log, special_slow.log e special_very_slow.log, que relatam suas estatísticas personalizadas.
Ex. para relatar o tempo de deterioração dos itens, em game.cpp:
Adicionar:
A string internalDecayItem será usada para o relatório de uso total da CPU. O segundo parâmetro (ID do item) será relatado nos slowregistros very_slow. Nesse caso, diria qual ID de item decaiu em 10 ms (tempo de decaimento de item único, nem todos os itens com esse ID de item).
A maioria dos OTS passam o nome do jogador como segundo parâmetro. Isso permitiu que eles rastreassem qual jogador gerou ações 'lentas' - OTS atrasado.
Credits: kondra e @gesior